package com.dnd.monitor.mapper;

import com.dnd.monitor.entity.DocumentNumberCalc;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;

import java.util.List;

/**
 * @Author 安贺
 * @CreateTime 2022年08月09日 16:52:00
 * @Description:
 */
@Mapper
public interface MonitorMapper {


    /**
     * 查询本地库推算数据
     * @return 返回推算文书号列表
     */
    List<DocumentNumberCalc> selectList();

    /**
     * 测试数据源切换
     * @return 返回id
     */
    List<String> getId();

    /**
     * 测试模糊查询
     * @param str
     * @return
     */
    List<String> getWhs(String str);

    /**
     * 获取不同地区的文书号列表
     * @param  wshNew1 许可文书号1
     * @param  dataType 处罚还是许可，来确定查那个表
     * @return
     */
    List<String> getDiffAreaDocNumWith1(@Param("wshNew1") String wshNew1, @Param("dataType") String dataType);

    /**
     * 获取不同地区的文书号列表
     * @param  wshNew2 许可文书号2
     * @param  dataType 处罚还是许可，来确定查那个表
     * @return
     */
    List<String> getDiffAreaDocNumWith2(@Param("wshNew2") String wshNew2, @Param("dataType") String dataType);

    /**
     *  批量更新本地库
     * @param collect 数据
     */
    @Transactional(propagation= Propagation.REQUIRES_NEW)
    void batchUpdateCheckResult(@Param("collect") List<DocumentNumberCalc> collect, @Param("areaName") String areaName);
}
